Algorithmic Skeletons in an Imperative Language for Distributed Programming

نویسنده

  • Herbert Kuchen
چکیده

Algorithmic skeletons are functions representing common parallelization patterns and implemented in parallel. They can be used as the building blocks of parallel and distributed applications by integrating them into a sequential language. In this paper, we present a new approach to programming with skeletons. We integrate the skeletons into an imperative host language, which leads to important gains in eeciency. At the same time, we enhance the host language with some functional features, like higher-order functions and currying, as well as with a polymorphic type system, in order to allow high-level programming. After describing a series of skeletons which work with distributed arrays, we give two examples of parallel algorithms written as sequential programs, namely shortest paths in graphs and Gaussian elimination. Run-time measurements show that we approach the eecien-cy of message-passing C up to a factor between 1 and 2.5.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Skil: An Imperative Language with Algorithmic Skeletons for Efficient Distributed Programming

In this paper we present Skil, an imperative language enhanced with higher-order functions and currying, as well as with a polymorphic type system. The high level of Skil allows the integration of algorithmic skeletons, i.e. of higherorder functions representing parallel computation patterns. At the same time, the language can be efficiently implemented. After describing a series of skeletons w...

متن کامل

Eecient Parallel Programming with Algorithmic Skeletons

Algorithmic skeletons are polymorphic higher-order functions representing common parallelization patterns and implemented in parallel. They can be used as the building blocks of parallel and distributed applications by integrating them into a sequential language. In this paper, we present a new approach to programming with skeletons. We integrate the skeletons into an imperative host language e...

متن کامل

Parallel Genetic Algorithm Using Algorithmic Skeleton

Algorithmic skeleton has received attention as an efficient method of parallel programming in recent years. Using the method, the programmer can implement parallel programs easily. In this study, a set of efficient algorithmic skeletons is introduced for use in implementing parallel genetic algorithm (PGA).A performance modelis derived for each skeleton that makes the comparison of skeletons po...

متن کامل

Parallel Genetic Algorithm Using Algorithmic Skeleton

Algorithmic skeleton has received attention as an efficient method of parallel programming in recent years. Using the method, the programmer can implement parallel programs easily. In this study, a set of efficient algorithmic skeletons is introduced for use in implementing parallel genetic algorithm (PGA).A performance modelis derived for each skeleton that makes the comparison of skeletons po...

متن کامل

Algorithmic Skeletons for Adaptive Multigrid Methods

This paper presents a new approach to parallel programming with algorithmic skeletons, i.e. common parallelization patterns. We use an imperative language enhanced by some functional features as host for the embedding of the skeletons. This allows an eecient implementation and at the same time a high level of programming. In particular, low level communication problems such as deadlocks are avo...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1995